﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using RCA1._0.DAL_WS;

namespace RCA1._0
{
    public partial class ThemCongTy : Form
    {
        public ThemCongTy()
        {
            InitializeComponent();
        }

       
        private DAL_WSSoapClient wsDAL = new DAL_WSSoapClient();

        private LOAICONGTYDTO LoaiCTy = new LOAICONGTYDTO();
        private CONGTYDTO CTy = new CONGTYDTO();
        private List<LOAICONGTYDTO> DsLoaiCty = null;
        private List<CONGTYDTO> DsCty = null;
        

        private void ThemCongTy_Load(object sender, EventArgs e)
        {
            //Lấy danh sách loại công ty
            DsLoaiCty = new List<LOAICONGTYDTO>(wsDAL.GetDanhSachLoaiCongTy());
            //Thể hiện danh sách loại công ty ra Bảng Danh sách công ty
            dtvcmbMaLoaiCongTy.DataSource = DsLoaiCty;
            dtvcmbMaLoaiCongTy.DisplayMember = "TenLoaiCongTy";
            dtvcmbMaLoaiCongTy.ValueMember = "IDLoaiCongTy";

            //Thể hiện danh sách loại công ty ra bảng chọn loại danh sách công ty
            cbbLoaiCongTy.DataSource = DsLoaiCty;
            cbbLoaiCongTy.DisplayMember = "TenLoaiCongTy";
            cbbLoaiCongTy.ValueMember = "IDLoaiCongTy";

            //Thể hiện danh sách công ty
            TheHienDanhSachCongTy();
            
        }

        //private void btnThemDiaChiChiNhanh_Click(object sender, EventArgs e)
        //{
        //    ThemChiNhanh_VanPhongDaiDien frm = new ThemChiNhanh_VanPhongDaiDien();
        //    frm.ShowDialog();
        //}

        //private void btnThemDiaChiVanPhongDaiDien_Click(object sender, EventArgs e)
        //{
        //    ThemChiNhanh_VanPhongDaiDien frm = new ThemChiNhanh_VanPhongDaiDien();
        //    frm.ShowDialog();
        //}

        void TheHienDanhSachCongTy() 
        {
            //Lấy danh sách Công Ty
            DsCty = new List<CONGTYDTO>(wsDAL.GetDanhSachCongTy());
            dtgvDSCongTy.DataSource = DsCty;
        }


        private void btnLamLai_Click(object sender, EventArgs e)
        {            
            this.txtTenCongTy.Text = "";
            this.txtTenGDCongTy.Text = "";
            this.txtTenVietTat.Text = "";
            this.txtVonDieuLeSo.Text = "";
            this.txtVonDieuLeBangChu.Text = "";
            this.txtMenhGiaCoPhan.Text = "";
            this.txtMaDiaChiTruSoChinh.Text = "";
            this.txtNganhNgheKinhDoanhChinh.Text = "";
            this.txtDienThoai.Text = "";
            this.txtFax.Text = "";
            this.txtEmail.Text = "";
            this.txtWebsite.Text = "";
        }


        #region "Kiểm tra - thêm"
        private string kiemTra()
        {
            string error = "";
            bool hopLe = true;
            hopLe = this.txtTenCongTy.Text != "";
            if (!hopLe)
            {
                error += "Tên công ty rỗng .\n ";
            }
            hopLe = this.txtVonDieuLeSo.Text != "";
            if (!hopLe)
            {
                error += "Vốn điều lệ rỗng .\n ";
            }
            hopLe = this.txtMaDiaChiTruSoChinh.Text != "";
            if (!hopLe)
            {
                error += "Địa chỉ trụ sở chính rỗng .\n ";
            }
           
            return error;
        }


        private void btnThemCongTy_Click(object sender, EventArgs e)
        {
            string error = kiemTra();
            if (error == "")
            {

                string tencongty = this.txtTenCongTy.Text;
                string tengdcongty = this.txtTenGDCongTy.Text;
                string tenviettat = this.txtTenVietTat.Text;
                double vondieuleso = double.Parse(this.txtVonDieuLeSo.Text);
                string vondieulechu = this.txtVonDieuLeBangChu.Text;
                double MenhGiaCoPhan = double.Parse(this.txtMenhGiaCoPhan.Text);
                int MaDiaChiTruSoChinh = int.Parse(this.txtMaDiaChiTruSoChinh.Text);
                string nganhnghekdchinh = this.txtNganhNgheKinhDoanhChinh.Text;
                string dienthoai = this.txtDienThoai.Text;
                string fax = this.txtFax.Text;
                string email = this.txtEmail.Text;
                string website = this.txtWebsite.Text;
               // int namhoc = int.Parse(this.txtNamHoc.Text.ToString());
                //DateTime ngaynhaplieu = Convert.ToDateTime(this.dtpNgayNhapLieu.Text.ToString());
                DateTime ngaynhaplieu = DateTime.Now.Date;

                DateTime ngaybatdauhoatdong = DateTime.Now.Date;
                DateTime namtaichinhbatdau = DateTime.Now.Date;
                DateTime namtaichinhketthuc = DateTime.Now.Date;


                LoaiCTy = new LOAICONGTYDTO();
                LoaiCTy = (LOAICONGTYDTO)this.cbbLoaiCongTy.SelectedItem;
                int maloaicty = LoaiCTy.IDLoaiCongTy;
                //int maloaicty = wsDAL.GetIDLoaiCongTy();
                  //  //LOAICONGTYDTO.IDLoaiCongTy;
                CTy = new CONGTYDTO();
                CTy.TenCongTy = tencongty;
                CTy.TenGiaoDichCongTy = tengdcongty;
                CTy.TenVietTat =  tenviettat;
                CTy.VonDieuLeSo = vondieuleso;
                CTy.VonDieuLeBangChu = vondieulechu;
                CTy.MenhGiaCoPhan = MenhGiaCoPhan;
                
                CTy.NganhNgheKinhDoanhChinh = nganhnghekdchinh;
                CTy.NgayBatDauHoatDong = ngaybatdauhoatdong;
                CTy.NamTaiChinhBatDau = namtaichinhbatdau;
                CTy.NamTaiChinhKetThuc = namtaichinhketthuc;
                
                
                CTy.Email = email;
                CTy.Website = website;
                CTy.NgayNhapLieu = ngaynhaplieu;
                CTy.MaLoaiCongTy = maloaicty;
                //CTy.LoaiCTy = LoaiCTy;


                wsDAL.ThemCongTy(CTy);
                MessageBox.Show("Thêm công ty thành công !", "Thông Báo !", MessageBoxButtons.OK, MessageBoxIcon.Information);
                //load lại danh sách công ty
                TheHienDanhSachCongTy();
                
            }
            else {
                MessageBox.Show(error, "Báo lỗi !", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        
        }

        #endregion

        
        //Sự kiện Double click vào một ô trong Bảng Danh sách công ty
        private void dtgvDSCongTy_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            //Lấy đối tượng Công ty từ Danh sách công ty theo vị trí từ bảng danh sách công ty
            CONGTYDTO congTy = (CONGTYDTO)DsCty[e.RowIndex];
            CongTy frm = new CongTy();
            frm.congTy = congTy;
            frm.ShowDialog();
            TheHienDanhSachCongTy();
        }


        #region "Sự kiện Gõ từ bàn phím - Kiểm tra ký tự nhập vào từ bàn phím"
        /*
         * Sự kiện Gõ từ bàn phím
         * Kiểm tra ký tự nhập vào từ bàn phím
         */
        private void txtDienThoai_KeyPress(object sender, KeyPressEventArgs e)
        {
            //Nếu là ký tự chữ và không phải là ký tự backspace thì khóa phím
            if (char.IsLetter(e.KeyChar) == true && e.KeyChar != (char)127)
                e.Handled = true;
        }

        private void txtFax_KeyPress(object sender, KeyPressEventArgs e)
        {
            //Nếu là ký tự chữ và không phải là ký tự backspace thì khóa phím
            if (char.IsLetter(e.KeyChar) == true && e.KeyChar != (char)127)
                e.Handled = true;
        }

        private void txtMenhGiaCoPhan_KeyPress(object sender, KeyPressEventArgs e)
        {
            //Nếu là ký tự chữ và không phải là ký tự backspace thì khóa phím
            if (char.IsLetter(e.KeyChar) == true && e.KeyChar != (char)127)
                e.Handled = true;
        }

        private void txtVonDieuLeSo_KeyPress(object sender, KeyPressEventArgs e)
        {
            //Nếu là ký tự chữ và không phải là ký tự backspace thì khóa phím
            if (char.IsLetter(e.KeyChar) == true && e.KeyChar != (char)127)
                e.Handled = true;
        }

        #endregion


        private void btnThoat_Click(object sender, EventArgs e)
        {
            this.Close();
        }

     
    }
}
